package tt.dz.egobus.servicemanager.dao;

import tt.dz.egobus.servicemanager.base.dao.ExtendDao;
import tt.dz.egobus.servicemanager.entities.BusinessService;

import java.util.List;

/**
 * @author Anson
 * @date 17-3-14
 * @name 业务类型DAO
 * @since 1.0.3
 */
public interface BusinessServiceDao extends ExtendDao<BusinessService, String> {
    /**
     * @param userId 用户id
     * @author Anson
     * @date 17-4-1
     * @name 判断某个用户是否含有未完成的业务流程
     * @since 1.0.3
     */
    boolean isExitUserUnDoneBusiness(String userId);

    /**
     * @param userId 用户id
     * @param
     * @author Anson
     * @date 17-4-1
     * @name 获取用户未完成的流程信息
     * @since 1.0.3
     */
    BusinessService getUserUnDoneService(String userId);

    /*
     *
     * @param driverId 司机id
     * @author Anson
     * @date 17-4-1
     * @name 司机当前未完成流程信息
     * @since 1.0.3
     *
     */
    BusinessService getDriverUnDoneService(String driverId);

    /**
     * @param businessCodes 业务码数组
     * @param driverId      司机id
     * @author Anson
     * @date 17-4-13
     * @name 计算司机的在不同的业务服务下的服务次数
     * 查询行程完毕的数据
     * 返回结果中与请求中业务码一一对应
     * @since 1.0.4
     */
    List<Integer> queryDriverBusinessCodeCount(Integer[] businessCodes, String driverId);
}
